#define _CRT_SECURE_NO_WARNINGS 1
#pragma once
#include<iostream>
#include<vector>
#include<time.h>
#include<stack>
#include<queue>
using namespace std;

void Print(vector<int>& arr, int n);

void InsertSort(vector<int> &arr, int n);

void QuickSort(vector<int>& arr, int left, int right);
void QuickSortNonRStack(vector<int>& arr, int left, int right);
void QuickSortNonRQueue(vector<int>& arr, int left, int right);

void CountSort(vector<int>& arr, int n);

void SelectSort(vector<int>& arr, int n);

void ButtleSort(vector<int>& arr, int n);

void ShellSort(vector<int>& arr, int n);

void HeapSort(vector<int>& arr, int n);

void MergeSort(vector<int>& arr, int n);
void MergeSortNonR(vector<int>& arr, int n);
